/* axios二次封装 */
import axios from 'axios'
import { Toast } from 'vant'

// 区分开发环境与生产环境下的接口基本 URL
// const baseURL = process.env.NODE_ENV === 'development' ? '开发环境下的' : '生产环境下的'
// const baseURL = process.env.NODE_ENV === 'development' ? 'http://192.168.0.57:30303' : 'http://www.xionmaoyouxuan'

const service = axios.create({
  baseURL: 'http://www.xiongmaoyouxuan.com',
  timeout: 30000,
})

// 请求拦截
service.interceptors.request.use(config => {
  console.log('请求拦截')
  // 提示
  Toast.loading({
    message: '加载中...',
    duration: 0,
  })
  config.headers.token = 'ahsfdiuashfaiosufg'
  // config.headers['x-platform'] = 'pc'
  return config
})

// 响应拦截
service.interceptors.response.use(response => {
  // 关闭提示
  Toast.clear()
  // console.log('响应拦截', response)
  // 如果能正常响应则返回使用的数据
  if (response.status >= 200 && response.status <= 300) {
    const { code, data } = response.data
    if (code === 200) {
      return data
    }
  }
  // 如果发生异常，则返回
  const err = new Error('请求出现异常')
  err.error = response
  return Promise.reject(err)
})

export default service
